/**
 * This file is part of the CAKIS project.
 * 
 * Copyright (c) 2009-2010 - Florian Arndt, Christian Kerl
 * 
 * @license GNU Lesser General Public License v3 <http://www.opensource.org/licenses/lgpl-3.0.html>
 * @since   27.03.2010
 * @version SVN: $Id: Timestampable.java 46 2010-03-30 22:28:13Z christian-kerl@web.de $
 */
package org.cakis.server.model;

import java.util.Date;

/**
 * Timestampable provides methods to track the creation date and
 * the date of the last update of an entity.
 *
 * @author Christian Kerl
 */
public interface Timestampable {

    /**
     * Gets the creation date.
     * 
     * @return
     */
    Date getCreatedAt();

    /**
     * Sets the creation date.
     * 
     * @param date
     */
    void setCreatedAt(Date date);

    /**
     * Gets the date of the last update.
     * 
     * @return
     */
    Date getUpdatedAt();

    /**
     * Sets the date of the last update.
     * 
     * @param date
     */
    void setUpdatedAt(Date date);
}
